1. Technical Field
The present invention relates to techniques for performing signal processing using programmable semiconductor devices.
2. Description of the Related Art
Conventionally, there have been known techniques for performing, using programmable semiconductor devices whose circuit configurations are defined by configuration data, signal processing that realizes various functions.
However, in the programmable semiconductor devices, due to soft errors caused by, for example, cosmic rays, there may occur such a phenomenon that data recorded in memory elements of the programmable semiconductor devices are logically inverted, i.e., changed from 1 to 0 or from 0 to 1. Consequently, data that contains errors may be outputted from the programmable semiconductor devices.
To suppress data that contains errors from being outputted from the programmable semiconductor devices, it is preferable to configure the programmable semiconductor devices to have redundancy. For example, Japanese Patent Application Publication No. JP2013219473A discloses a programmable logic device which includes first and second logic blocks that severally perform the same data processing. The programmable logic device determines whether first data produced by the first logic block and second data produced by the second logic block contain errors and outputs only one of the first data and the second data which is determined as containing no errors.
However, configuring the programmable semiconductor devices or systems employing them to have redundancy may result in increase in space, weight and cost. Moreover, configuring the programmable semiconductor devices or systems employing them to have redundancy may also result in increase in electrical power consumption and the internal temperatures of the devices or systems and thus result in decrease in the maximum allowable operating temperatures of the devices or systems. On the other hand, without redundancy, the programmable semiconductor devices or systems employing them may output data that contains errors, as described previously.